package com.cl.pattern.state.example;

/**
 * 电梯状态抽象类
 */
public abstract class LiftState {

    /**
     * 上下文
     */
    protected Context context;

    /**
     * 设置上下文
     * @param context
     */
    public void setContext(Context context) {
        this.context = context;
    }

    /**
     * 电梯开启动作
     */
    public abstract void open();

    /**
     * 电梯关闭动作
     */
    public abstract void close();

    /**
     * 电梯运行
     */
    public abstract void run();

    /**
     * 电梯停止
     */
    public abstract void stop();

}